package com.dzl.card.service;

import com.dzl.card.pojo.dto.WelfareCardTypeDto;
import com.dzl.card.pojo.query.WelfareCardTypeQuery;
import com.dzl.card.pojo.vo.WelfareCardTypeVo;
import com.github.pagehelper.PageInfo;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * 卡类型表(WelfareCardType)表服务接口
 * @author caobucao
 * @since 2021-05-18 18:51:46
 */
public interface WelfareCardTypeService {

    /**
     * 分页查询卡类别列表
     * @date 2021/5/18 19:03
     * @author caobucao
     * @param query 查询条件
     * @return java.util.List<com.dzl.cardType.entity.vo.WelfareCardTypeVo>
     */
    PageInfo<WelfareCardTypeVo> selectWelfareCardTypeListPage(WelfareCardTypeQuery query);

    /**
     *
     * @date 2021/5/18 19:19
     * @author caobucao
     * @param welfareCardTypeDto 卡类型对象
     * @return Integer 影响条数
     */
    Integer saveWelfareCardType(WelfareCardTypeDto welfareCardTypeDto);

    /**
     * 通过福利卡所属类型查询该类型所属分区
     * @date 2021/8/6 11:24
     * @author caobucao
     * @param cardTypeId 卡类型id
     * @return java.util.List<java.lang.Integer>
     */
    List<Integer> selectPartitionIdByCardTypeId(Integer cardTypeId);

    /**
     * 通过id删除卡类型
     * @date 2021/7/30 10:09
     * @author caobucao
     * @param id 卡类型id
     * @return java.lang.Integer
     */
    Integer deleteCardType(Integer id);

    /**
     * 通过用户id查询是否绑定过分类入口商品的福利卡
     * @param userId 卡密绑定用户id
     * @date 2021/12/30 11:04
     * @author liuguanjun
     */
    Integer selectShowClassifyEntryByUserId(Integer userId);
}
